﻿using B.S.Warehouse.ErrorCord;
using MediatR;

namespace B.S.Warehouse.Write.Api.Application.Command.OutboundCommand
{
    public class AddOutboundCommand : IRequest<ApiResult<object>>
    {
        // 单据主题，必填
        // 主键，自增长

        public int OutboundId { get; set; }
        /// <summary>
        /// 出库申请主题
        /// </summary>
        public string DocumentSubject { get; set; }
        /// <summary>
        /// 单据编号，保存后自动生成，这里可先设为可空字符串，后续业务处理中赋值
        /// </summary>
        public string DocumentNumber { get; set; }
        /// <summary>
        /// 来源单据
        /// </summary>
        public string SourceDocument { get; set; }
        /// <summary>
        /// 出库库管，必填
        /// </summary>
        public string OutboundWarehouseKeeper { get; set; }
        /// <summary>
        /// 关联单位名称
        /// </summary>
        public string AssociatedUnitName { get; set; }
        /// <summary>
        /// 申请人，这里已固定为admin，实际可按需处理
        /// </summary>
        public string Applicant { get; set; }
        /// <summary>
        /// 申请时间，已给定默认值，可根据实际业务调整
        /// </summary>
        public DateTime ApplicationTime { get; set; }
        /// <summary>
        /// 出库类别
        /// </summary>
        public string OutboundCategory { get; set; }
        /// <summary>
        /// 概要
        /// </summary>
        public string Summary { get; set; }

        /// <summary>
        /// 收货人
        /// </summary>
        public string Consignee { get; set; }
        /// <summary>
        /// 固定电话
        /// </summary>
        public string FixedPhone { get; set; }
        /// <summary>
        /// 手机号码
        /// </summary>
        public string MobilePhone { get; set; }
        /// <summary>
        /// 所在省份
        /// </summary>
        public string Province { get; set; }
        /// <summary>
        /// 所在市区
        /// </summary>
        public string City { get; set; }
        /// <summary>
        /// 详细地址
        /// </summary>
        public string DetailedAddress { get; set; }

        /// <summary>
        /// 删除标准
        /// </summary>
        public bool IsDel { get; set; }
    }
}
